using System;using System.Reflection;
namespace DroneCAN {
public partial class DroneCAN {
    public static (Type type,UInt16 msgid, ulong crcseed, Func<Byte[],int, bool, object> convert)[] MSG_INFO = { 
	(typeof(dronecan_protocol_Stats), 342, 0x763AE3B8A986F8D1, (b,s,fd) => dronecan_protocol_Stats.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_protocol_CanStats), 343, 0xCE080CAE3CA33C75, (b,s,fd) => dronecan_protocol_CanStats.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_BasicID), 20030, 0x5B1C624A8E4FC533, (b,s,fd) => dronecan_remoteid_BasicID.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_Location), 20031, 0xEAA3A2C5BCB14CAA, (b,s,fd) => dronecan_remoteid_Location.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_SelfID), 20032, 0x59BE81DC4C06A185, (b,s,fd) => dronecan_remoteid_SelfID.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_System), 20033, 0x9AC872F49BF32437, (b,s,fd) => dronecan_remoteid_System.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_OperatorID), 20034, 0x581E7FC7F03AF935, (b,s,fd) => dronecan_remoteid_OperatorID.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_ArmStatus), 20035, 0xFEDF72CCF06F3BDD, (b,s,fd) => dronecan_remoteid_ArmStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_SecureCommand_req), 64, 0x126A47C9C17A8BD7, (b,s,fd) => dronecan_remoteid_SecureCommand_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_remoteid_SecureCommand_res), 64, 0x126A47C9C17A8BD7, (b,s,fd) => dronecan_remoteid_SecureCommand_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_sensors_hygrometer_Hygrometer), 1032, 0xCEB308892BF163E8, (b,s,fd) => dronecan_sensors_hygrometer_Hygrometer.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(dronecan_sensors_rc_RCInput), 1140, 0x771555E596AAB4CF, (b,s,fd) => dronecan_sensors_rc_RCInput.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hex_equipment_flow_Measurement), 20200, 0x6A908866BCB49C18, (b,s,fd) => com_hex_equipment_flow_Measurement.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_himark_servo_ServoCmd), 2018, 0x5D09E48551CE9194, (b,s,fd) => com_himark_servo_ServoCmd.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_himark_servo_ServoInfo), 2019, 0xCA8F4B8F97D23B57, (b,s,fd) => com_himark_servo_ServoInfo.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_GetEscID), 20013, 0x00004E2D, (b,s,fd) => com_hobbywing_esc_GetEscID.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_StatusMsg1), 20050, 0x813B3E2C4AD670E, (b,s,fd) => com_hobbywing_esc_StatusMsg1.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_StatusMsg2), 20051, 0x1675DA01C3B91297, (b,s,fd) => com_hobbywing_esc_StatusMsg2.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_StatusMsg3), 20052, 0x24919CD1EB34ECE9, (b,s,fd) => com_hobbywing_esc_StatusMsg3.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_RawCommand), 20100, 0xBDF086C79F6640AD, (b,s,fd) => com_hobbywing_esc_RawCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetID_req), 210, 0xC323CB5E9EC2B6F7, (b,s,fd) => com_hobbywing_esc_SetID_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetID_res), 210, 0xC323CB5E9EC2B6F7, (b,s,fd) => com_hobbywing_esc_SetID_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetBaud_req), 211, 0xADA98653B52DE435, (b,s,fd) => com_hobbywing_esc_SetBaud_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetBaud_res), 211, 0xADA98653B52DE435, (b,s,fd) => com_hobbywing_esc_SetBaud_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetLED_req), 212, 0xB493BD48C0853EE5, (b,s,fd) => com_hobbywing_esc_SetLED_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetLED_res), 212, 0xB493BD48C0853EE5, (b,s,fd) => com_hobbywing_esc_SetLED_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetDirection_req), 213, 0x9D793111D262BA68, (b,s,fd) => com_hobbywing_esc_SetDirection_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetDirection_res), 213, 0x9D793111D262BA68, (b,s,fd) => com_hobbywing_esc_SetDirection_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetReportingFrequency_req), 214, 0x1FD0404420983DEB, (b,s,fd) => com_hobbywing_esc_SetReportingFrequency_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetReportingFrequency_res), 214, 0x1FD0404420983DEB, (b,s,fd) => com_hobbywing_esc_SetReportingFrequency_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetThrottleSource_req), 215, 0xC248FAAEFE5E29A, (b,s,fd) => com_hobbywing_esc_SetThrottleSource_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetThrottleSource_res), 215, 0xC248FAAEFE5E29A, (b,s,fd) => com_hobbywing_esc_SetThrottleSource_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SelfTest_req), 216, 0xC48D4DE61C5295DF, (b,s,fd) => com_hobbywing_esc_SelfTest_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SelfTest_res), 216, 0xC48D4DE61C5295DF, (b,s,fd) => com_hobbywing_esc_SelfTest_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetAngle_req), 217, 0x81D9B10761C28E0A, (b,s,fd) => com_hobbywing_esc_SetAngle_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_SetAngle_res), 217, 0x81D9B10761C28E0A, (b,s,fd) => com_hobbywing_esc_SetAngle_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_GetMaintenanceInformation_req), 241, 0xB81DBD4EC9A5977D, (b,s,fd) => com_hobbywing_esc_GetMaintenanceInformation_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_GetMaintenanceInformation_res), 241, 0xB81DBD4EC9A5977D, (b,s,fd) => com_hobbywing_esc_GetMaintenanceInformation_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_GetMajorConfig_req), 242, 0x1506774DA3930BFD, (b,s,fd) => com_hobbywing_esc_GetMajorConfig_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_hobbywing_esc_GetMajorConfig_res), 242, 0x1506774DA3930BFD, (b,s,fd) => com_hobbywing_esc_GetMajorConfig_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_volz_servo_ActuatorStatus), 20020, 0x29BF0D53B4060263, (b,s,fd) => com_volz_servo_ActuatorStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_xacti_GnssStatus), 20305, 0x3413AC5D3E1DCBE3, (b,s,fd) => com_xacti_GnssStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_xacti_GnssStatusReq), 20306, 0x60F5464E1CA03449, (b,s,fd) => com_xacti_GnssStatusReq.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_xacti_GimbalAttitudeStatus), 20402, 0xEB428B6C25832692, (b,s,fd) => com_xacti_GimbalAttitudeStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_xacti_CopterAttStatus), 20407, 0x6C1F30F1893763B1, (b,s,fd) => com_xacti_CopterAttStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(com_xacti_GimbalControlData), 20554, 0x3B058FA5B150C5BE, (b,s,fd) => com_xacti_GimbalControlData.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_equipment_power_BatteryInfoAux), 20004, 0x7D7F49FC75484882, (b,s,fd) => ardupilot_equipment_power_BatteryInfoAux.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_equipment_power_BatteryContinuous), 20010, 0x756B561340D5E4AE, (b,s,fd) => ardupilot_equipment_power_BatteryContinuous.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_equipment_power_BatteryPeriodic), 20011, 0xF012494E97358D2, (b,s,fd) => ardupilot_equipment_power_BatteryPeriodic.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_equipment_power_BatteryCells), 20012, 0x5C8B1ABD15890EA4, (b,s,fd) => ardupilot_equipment_power_BatteryCells.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_equipment_proximity_sensor_Proximity), 21910, 0x99DD3985FB3222CE, (b,s,fd) => ardupilot_equipment_proximity_sensor_Proximity.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_equipment_trafficmonitor_TrafficReport), 20790, 0x68E45DB60B6981F8, (b,s,fd) => ardupilot_equipment_trafficmonitor_TrafficReport.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_gnss_Heading), 20002, 0x315CAE39ECED3412, (b,s,fd) => ardupilot_gnss_Heading.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_gnss_Status), 20003, 0xBA3CB4ABBB007F69, (b,s,fd) => ardupilot_gnss_Status.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_gnss_MovingBaselineData), 20005, 0x9F323748C32133A, (b,s,fd) => ardupilot_gnss_MovingBaselineData.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_gnss_RelPosHeading), 20006, 0xA1727AF295F94478, (b,s,fd) => ardupilot_gnss_RelPosHeading.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_indication_SafetyState), 20000, 0xE965701A95A1A6A1, (b,s,fd) => ardupilot_indication_SafetyState.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_indication_Button), 20001, 0x645A46EFBA7466E, (b,s,fd) => ardupilot_indication_Button.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(ardupilot_indication_NotifyState), 20007, 0x631F2A9C1651FDEC, (b,s,fd) => ardupilot_indication_NotifyState.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(cuav_equipment_power_CBAT), 20300, 0xB4DACE3A38E09A74, (b,s,fd) => cuav_equipment_power_CBAT.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_actuator_ArrayCommand), 1010, 0xD8A7486238EC3AF3, (b,s,fd) => uavcan_equipment_actuator_ArrayCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_actuator_Status), 1011, 0x5E9BBA44FAF1EA04, (b,s,fd) => uavcan_equipment_actuator_Status.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_ahrs_Solution), 1000, 0x72A63A3C6F41FA9B, (b,s,fd) => uavcan_equipment_ahrs_Solution.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_ahrs_MagneticFieldStrength), 1001, 0xE2A7D4A9460BC2F2, (b,s,fd) => uavcan_equipment_ahrs_MagneticFieldStrength.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_ahrs_MagneticFieldStrength2), 1002, 0xB6AC0C442430297E, (b,s,fd) => uavcan_equipment_ahrs_MagneticFieldStrength2.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_ahrs_RawIMU), 1003, 0x8280632C40E574B5, (b,s,fd) => uavcan_equipment_ahrs_RawIMU.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_TrueAirspeed), 1020, 0x306F69E0A591AFAA, (b,s,fd) => uavcan_equipment_air_data_TrueAirspeed.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_IndicatedAirspeed), 1021, 0xA1892D72AB8945F, (b,s,fd) => uavcan_equipment_air_data_IndicatedAirspeed.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_AngleOfAttack), 1025, 0xD5513C3F7AFAC74E, (b,s,fd) => uavcan_equipment_air_data_AngleOfAttack.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_Sideslip), 1026, 0x7B48E55FCFF42A57, (b,s,fd) => uavcan_equipment_air_data_Sideslip.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_RawAirData), 1027, 0xC77DF38BA122F5DA, (b,s,fd) => uavcan_equipment_air_data_RawAirData.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_StaticPressure), 1028, 0xCDC7C43412BDC89A, (b,s,fd) => uavcan_equipment_air_data_StaticPressure.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_air_data_StaticTemperature), 1029, 0x49272A6477D96271, (b,s,fd) => uavcan_equipment_air_data_StaticTemperature.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_camera_gimbal_AngularCommand), 1040, 0x4AF6E57B2B2BE29C, (b,s,fd) => uavcan_equipment_camera_gimbal_AngularCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_camera_gimbal_GEOPOICommand), 1041, 0x9371428A92F01FD6, (b,s,fd) => uavcan_equipment_camera_gimbal_GEOPOICommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_camera_gimbal_Status), 1044, 0xB9F127865BE0D61E, (b,s,fd) => uavcan_equipment_camera_gimbal_Status.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_device_Temperature), 1110, 0x70261C28A94144C6, (b,s,fd) => uavcan_equipment_device_Temperature.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_esc_RawCommand), 1030, 0x217F5C87D7EC951D, (b,s,fd) => uavcan_equipment_esc_RawCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_esc_RPMCommand), 1031, 0xCE0F9F621CF7E70B, (b,s,fd) => uavcan_equipment_esc_RPMCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_esc_Status), 1034, 0xA9AF28AEA2FBB254, (b,s,fd) => uavcan_equipment_esc_Status.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_gnss_Fix), 1060, 0x54C1572B9E07F297, (b,s,fd) => uavcan_equipment_gnss_Fix.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_gnss_Auxiliary), 1061, 0x9BE8BDC4C3DBBFD2, (b,s,fd) => uavcan_equipment_gnss_Auxiliary.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_gnss_RTCMStream), 1062, 0x1F56030ECB171501, (b,s,fd) => uavcan_equipment_gnss_RTCMStream.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_gnss_Fix2), 1063, 0xCA41E7000F37435F, (b,s,fd) => uavcan_equipment_gnss_Fix2.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_hardpoint_Command), 1070, 0xA1A036268B0C3455, (b,s,fd) => uavcan_equipment_hardpoint_Command.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_hardpoint_Status), 1071, 0x624A519D42553D82, (b,s,fd) => uavcan_equipment_hardpoint_Status.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_ice_FuelTankStatus), 1129, 0x286B4A387BA84BC4, (b,s,fd) => uavcan_equipment_ice_FuelTankStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_ice_reciprocating_Status), 1120, 0xD38AA3EE75537EC6, (b,s,fd) => uavcan_equipment_ice_reciprocating_Status.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_indication_BeepCommand), 1080, 0xBE9EA9FEC2B15D52, (b,s,fd) => uavcan_equipment_indication_BeepCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_indication_LightsCommand), 1081, 0x2031D93C8BDD1EC4, (b,s,fd) => uavcan_equipment_indication_LightsCommand.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_power_PrimaryPowerSupplyStatus), 1090, 0xBBA05074AD757480, (b,s,fd) => uavcan_equipment_power_PrimaryPowerSupplyStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_power_CircuitStatus), 1091, 0x8313D33D0DDDA115, (b,s,fd) => uavcan_equipment_power_CircuitStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_power_BatteryInfo), 1092, 0x249C26548A711966, (b,s,fd) => uavcan_equipment_power_BatteryInfo.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_range_sensor_Measurement), 1050, 0x68FFFE70FC771952, (b,s,fd) => uavcan_equipment_range_sensor_Measurement.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_equipment_safety_ArmingStatus), 1100, 0x8700F375556A8003, (b,s,fd) => uavcan_equipment_safety_ArmingStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_navigation_GlobalNavigationSolution), 2000, 0x463B10CCCBE51C3D, (b,s,fd) => uavcan_navigation_GlobalNavigationSolution.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GetNodeInfo_req), 1, 0xEE468A8121C46A9E, (b,s,fd) => uavcan_protocol_GetNodeInfo_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GetNodeInfo_res), 1, 0xEE468A8121C46A9E, (b,s,fd) => uavcan_protocol_GetNodeInfo_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GetDataTypeInfo_req), 2, 0x1B283338A7BED2D8, (b,s,fd) => uavcan_protocol_GetDataTypeInfo_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GetDataTypeInfo_res), 2, 0x1B283338A7BED2D8, (b,s,fd) => uavcan_protocol_GetDataTypeInfo_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_NodeStatus), 341, 0xF0868D0C1A7C6F1, (b,s,fd) => uavcan_protocol_NodeStatus.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GetTransportStats_req), 4, 0xBE6F76A7EC312B04, (b,s,fd) => uavcan_protocol_GetTransportStats_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GetTransportStats_res), 4, 0xBE6F76A7EC312B04, (b,s,fd) => uavcan_protocol_GetTransportStats_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_GlobalTimeSync), 4, 0x20271116A793C2DB, (b,s,fd) => uavcan_protocol_GlobalTimeSync.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_Panic), 5, 0x8B79B4101811C1D7, (b,s,fd) => uavcan_protocol_Panic.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_RestartNode_req), 5, 0x569E05394A3017F0, (b,s,fd) => uavcan_protocol_RestartNode_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_RestartNode_res), 5, 0x569E05394A3017F0, (b,s,fd) => uavcan_protocol_RestartNode_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_AccessCommandShell_req), 6, 0x59276B5921C9246E, (b,s,fd) => uavcan_protocol_AccessCommandShell_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_AccessCommandShell_res), 6, 0x59276B5921C9246E, (b,s,fd) => uavcan_protocol_AccessCommandShell_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_debug_KeyValue), 16370, 0xE02F25D6E0C98AE0, (b,s,fd) => uavcan_protocol_debug_KeyValue.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_debug_LogMessage), 16383, 0xD654A48E0C049D75, (b,s,fd) => uavcan_protocol_debug_LogMessage.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_dynamic_node_id_Allocation), 1, 0xB2A812620A11D40, (b,s,fd) => uavcan_protocol_dynamic_node_id_Allocation.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_dynamic_node_id_server_AppendEntries_req), 30, 0x8032C7097B48A3CC, (b,s,fd) => uavcan_protocol_dynamic_node_id_server_AppendEntries_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_dynamic_node_id_server_AppendEntries_res), 30, 0x8032C7097B48A3CC, (b,s,fd) => uavcan_protocol_dynamic_node_id_server_AppendEntries_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_dynamic_node_id_server_RequestVote_req), 31, 0xCDDE07BB89A56356, (b,s,fd) => uavcan_protocol_dynamic_node_id_server_RequestVote_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_dynamic_node_id_server_RequestVote_res), 31, 0xCDDE07BB89A56356, (b,s,fd) => uavcan_protocol_dynamic_node_id_server_RequestVote_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_dynamic_node_id_server_Discovery), 390, 0x821AE2F525F69F21, (b,s,fd) => uavcan_protocol_dynamic_node_id_server_Discovery.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_enumeration_Begin_req), 15, 0x196AE06426A3B5D8, (b,s,fd) => uavcan_protocol_enumeration_Begin_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_enumeration_Begin_res), 15, 0x196AE06426A3B5D8, (b,s,fd) => uavcan_protocol_enumeration_Begin_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_enumeration_Indication), 380, 0x884CB63050A84F35, (b,s,fd) => uavcan_protocol_enumeration_Indication.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_BeginFirmwareUpdate_req), 40, 0xB7D725DF72724126, (b,s,fd) => uavcan_protocol_file_BeginFirmwareUpdate_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_BeginFirmwareUpdate_res), 40, 0xB7D725DF72724126, (b,s,fd) => uavcan_protocol_file_BeginFirmwareUpdate_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_GetInfo_req), 45, 0x5004891EE8A27531, (b,s,fd) => uavcan_protocol_file_GetInfo_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_GetInfo_res), 45, 0x5004891EE8A27531, (b,s,fd) => uavcan_protocol_file_GetInfo_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_GetDirectoryEntryInfo_req), 46, 0x8C46E8AB568BDA79, (b,s,fd) => uavcan_protocol_file_GetDirectoryEntryInfo_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_GetDirectoryEntryInfo_res), 46, 0x8C46E8AB568BDA79, (b,s,fd) => uavcan_protocol_file_GetDirectoryEntryInfo_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_Delete_req), 47, 0x78648C99170B47AA, (b,s,fd) => uavcan_protocol_file_Delete_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_Delete_res), 47, 0x78648C99170B47AA, (b,s,fd) => uavcan_protocol_file_Delete_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_Read_req), 48, 0x8DCDCA939F33F678, (b,s,fd) => uavcan_protocol_file_Read_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_Read_res), 48, 0x8DCDCA939F33F678, (b,s,fd) => uavcan_protocol_file_Read_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_Write_req), 49, 0x515AA1DC77E58429, (b,s,fd) => uavcan_protocol_file_Write_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_file_Write_res), 49, 0x515AA1DC77E58429, (b,s,fd) => uavcan_protocol_file_Write_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_param_ExecuteOpcode_req), 10, 0x3B131AC5EB69D2CD, (b,s,fd) => uavcan_protocol_param_ExecuteOpcode_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_param_ExecuteOpcode_res), 10, 0x3B131AC5EB69D2CD, (b,s,fd) => uavcan_protocol_param_ExecuteOpcode_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_param_GetSet_req), 11, 0xA7B622F939D1A4D5, (b,s,fd) => uavcan_protocol_param_GetSet_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_protocol_param_GetSet_res), 11, 0xA7B622F939D1A4D5, (b,s,fd) => uavcan_protocol_param_GetSet_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_tunnel_Broadcast), 2010, 0x5AA2D4D9CF4B1E85, (b,s,fd) => uavcan_tunnel_Broadcast.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_tunnel_SerialConfig), 2011, 0x4237AACEE87E82AD, (b,s,fd) => uavcan_tunnel_SerialConfig.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_tunnel_Targetted), 3001, 0xB138E7EA72A2A2E9, (b,s,fd) => uavcan_tunnel_Targetted.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_tunnel_Call_req), 63, 0xDB11EDC510502658, (b,s,fd) => uavcan_tunnel_Call_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(uavcan_tunnel_Call_res), 63, 0xDB11EDC510502658, (b,s,fd) => uavcan_tunnel_Call_res.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(mppt_Stream), 20009, 0xDD7096B255FB6358, (b,s,fd) => mppt_Stream.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(mppt_OutputEnable_req), 240, 0xEA251F2A6DD1D8A5, (b,s,fd) => mppt_OutputEnable_req.ByteArrayToDroneCANMsg(b,s,fd)),
	(typeof(mppt_OutputEnable_res), 240, 0xEA251F2A6DD1D8A5, (b,s,fd) => mppt_OutputEnable_res.ByteArrayToDroneCANMsg(b,s,fd)),
};}}